The present invention relates to network switches and switching, and more particularly, this invention relates to providing internet group management protocol (IGMP) group membership synchronization in a virtual link aggregation group (vLAG).
In a data center, an example of which is shown in FIG. 3 according to the prior art, each access switch 306 is typically connected to two aggregation switches for redundancy, for example, primary switch 302 and secondary switch 304. vLAG is a feature that utilizes all available bandwidth without sacrificing redundancy and connectivity. The feature extends link aggregation across the switch boundary at the aggregation layer. Thus, an access switch 306 has all its uplinks in a LAG 312 while the aggregation switches 302, 304 cooperate with each other to maintain this vLAG.
Since vLAG is an extension to standard link aggregation, layer 2 and layer 3 features may be supported on top of vLAG. In the system 300 shown in FIG. 3, both primary aggregator switch 302 and secondary aggregator switch 304 have IGMP snooping enabled. When the IP multicast receiver 310 connected to the access switch 306 sends an IGMP report, the packet is forwarded to only one of the aggregator switches (either primary 302 or secondary 304) and an IP multicast group entry will be created in the switch the packet is sent to. This IP multicast group information needs to synchronize with the peer device (the other aggregator switch to which the packet was not sent) for future traffic forwarding and redundancy purposes.
In conventional methods, synchronization of these multicast group entries are achieved via special synchronization packets sent between the peer devices (primary switch 302 and secondary switch 304) using an inter-switch link (ISL) 308. However, there are disadvantages with this approach, such as a reliable synchronization mechanism being needed, and that IP multicast data forwarding may be done only when the IP multicast group entries that are learned on the secondary switch 304 are synchronized to the primary switch 302, which adds a latency to the traffic flow through the system 300.